//新建文章路由的处理函数模块
//导入处理路径的核心模块
const path = require('path')
//导入数据库模块
const db = require('../db/index')

exports.addArticle = (req, res) => {
    //    console.log(req.body);
    //    console.log('-------');
    //    console.log(req.file);
    //判断是否上传了文章封面
    if (!req.file || req.file.fieldname !== 'cover_img') return res.cc('文章封面是必选参数！')
    //表单数据合法,进行数据库的存放操作
    //定义一个对象用来存放插入数据库的数据
    const articleInfo = {
        //标题、内容、状态、所属的分类Id
        ...req.body,
        //文章封面  文章封面在服务器的存放位置
        cover_img: path.join('/uploads', req.file.filename),
        // 文章发布时间
        pub_date: new Date(),
        //发布作者的id
        author_id: req.user.id
    }
    //定义发布文章的sql语句
    const sql = 'insert into ev_articles set ?'
    //执行sql语句
    db.query(sql, articleInfo, (err, results) => {
        // 执行 SQL 语句失败
        if (err) return res.cc(err)
        // 执行 SQL 语句成功，但是影响行数不等于 1
        if (results.affectedRows !== 1) return res.cc('发布文章失败！')
        // 发布文章成功
        res.cc('发布文章成功', 0)
    })
}